﻿using System;
using System.Collections.Generic;

namespace Infrastructure.Crosscutting.NetFramework
{
    public interface IWorkContext
    {
        Domain.Entity.User CurrentUser { get; }

        List<Domain.Entity.UserRole> UserRoleCache { get; }

        List<Domain.Entity.MvcAction> ActionCache { get; }

        List<Domain.Entity.MvcController> ControllerCache { get; }

        List<Domain.Entity.RoleMenu> RoleMenuCache { get; }

        bool IsAdmin { get; }

        bool IsOpenUser { get; }

        bool HasCurrentPermission(Type currentController, string currentAction);
    }
}
